home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacWorld 1997 November
/
Macworld (1997-11).dmg
/
Inside Macworld
/
Product News
/
BBEdit 4.5 Demo
/
BBEdit Glossary
/
C Source
/
RoutineDescriptor
< prev
Wrap
Text File
|
1995-07-24
|
763b
|
31 lines
/*
* #select#
*/
// typedef MACPASCAL SInt32 (*#select#) (SInt16 pData);
enum {
upp#select#Info = kPascalStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(SInt32)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(SInt16)))
};
#if USESROUTINEDESCRIPTORS
typedef UniversalProcPtr #select#UPP;
#define Call#select#(userRoutine, data) \
CallUniversalProc((UniversalProcPtr)(userRoutine), upp#select#Info,
(data))
#define New#select#(userRoutine) \
(#select#UPP) NewRoutineDescriptor((ProcPtr)(userRoutine), \
upp#select#Info, \
GetCurrentISA())
#else
typedef #select# #select#UPP;
#define Call#select#(userRoutine, data) \
(*(userRoutine))(data)
#define New#select#(userRoutine) \
(#select#UPP)(userRoutine)
#endif